package ooprontuariomedicointeligente;

import java.util.Scanner;

public class OOProntuarioMedicoInteligente {  //Classe principal, onde está localizado o método executável.

    public static void main(String[] args) { //Método principal
        /*
         * "Banco de dados" de doenças, que será utilizado mais tarde para
         * comparar com os sintomas recebido atráves do metodo cadastraConsulta,
         * da classe Interacao
         */
        Doenca[] ds = new Doenca[5];
        Medicamento vitamina = new Medicamento();
        vitamina.setNome("Vitamina");
        vitamina.setDescricao("Complexo vitamínico com vitaminas C e K para baixa imunidade.");

        Medicamento nebacetin = new Medicamento();
        nebacetin.setNome("Nebacetin");
        nebacetin.setDescricao("Pomada utilizada para tratar feridas e cortes.");

        Medicamento biotonico = new Medicamento();
        biotonico.setNome("Biotônico");
        biotonico.setDescricao("Repositor de ferro para o organismo recomendado para casos de anemia.");

        Medicamento lactopurga = new Medicamento();
        lactopurga.setNome("Lactopurga");
        lactopurga.setDescricao("Laxante com a função de desprender o organismo e limpar os intestinos.");

        Medicamento paracetamol = new Medicamento();
        paracetamol.setNome("Paracetamol");
        paracetamol.setDescricao("Remédio para diminuir a dor de cabeça e febre em geral.");

        ds[0] = new Doenca();
        ds[0].setNome("Gripe");
        ds[0].setMedicamento(vitamina);
        ds[0].setSintomas("Febre");

        ds[1] = new Doenca();
        ds[1].setNome("Herpes");
        ds[1].setMedicamento(nebacetin);
        ds[1].setSintomas("Feridas");

        ds[2] = new Doenca();
        ds[2].setNome("Meningite");
        ds[2].setMedicamento(biotonico);
        ds[2].setSintomas("Dor de cabeça");

        ds[3] = new Doenca();
        ds[3].setNome("Diarréia");
        ds[3].setMedicamento(lactopurga);
        ds[3].setSintomas("Descontrole intestinal");

        ds[4] = new Doenca();
        ds[4].setNome("Esquizofrenia");
        ds[4].setMedicamento(paracetamol);
        ds[4].setSintomas("Insanidade");

        Interacao i = new Interacao();
        i.Escolha();


        for (int x = 0; x < ds.length; x++) {
            if (ds[x].getSintomas().equalsIgnoreCase(i.cadastraConsulta().getDoença().getSintomas())) { //Aqui os sintomas inseridos pelo
                System.out.println("O diagnóstico é " + ds[x].getNome() + "\n");                        //usuário são comparados com os
                System.out.println("Deseja aceitar o diagnóstico? SIM ou NAO \n");                    //previamente cadastrados, e um 
                //diagnóstico é oferecido. O usuario 
                Scanner c = new Scanner(System.in);                                                   //pode aceitar ou recusar o diagnóstico.
                String medico = c.nextLine();
                if (medico.equalsIgnoreCase("sim")) {
                    System.out.println("\n A doença é: " + ds[x].getNome());
                    System.out.println("\n A descrição do remédio é: " + ds[x].medicamento.getDescricao());
                    System.out.println("\n E o remédio para ela é: " + ds[x].medicamento.getNome());
                } else if (medico.equalsIgnoreCase("nao")) {
                    i.Escolha();
                } else {
                    System.out.println("Opção inválida!");
                }

            }
            System.out.println("Diagnóstico inválido");
            i.Escolha();
        }


        i.Escolha();  /*
         * Independetemente do usuário aceitar ou recusar o diagnóstico, o
         * programa retorna ao método Escolha, onde o usuário pode escolher por
         * finalizar o programa
         */

    }
}
